1. Field of the Invention
This disclosure relates generally to data storage systems, and more specifically to a read channel in a hard disk drive (HDD).
2. Description of Related Art
Storage devices like hard disk drives are widely used in electronic devices, such as computers, MP3 players, video recorders, digital cameras and set-top boxes which need to store a large amount of data. FIG. 1 illustrates a conventional HDD 100, including at least one disk 110, which a spindle motor can cause to rotate around the axle of a central drive hub. A read/write transducer or head 130 is attached to a load beam 140 of a suspension via a slider and a gimbal. The load beam 140 is supported by an actuator arm 150 of an actuator 160. In operation, the actuator 160 moves the head 130 across tracks on the disk 110 until the head 130 is positioned at a target track, so that information can be written to, and read from, the surface of the disk 110.
FIG. 2 illustrates a simplified diagram of a read channel in an HDD. As shown, a read channel 200 may include an automatic gain controller (AGC) 201, a continuous time filter (CTF) 202, an analog digital converter (ADC) 203, a finite impulse response (FIR) equalizer 204, a Viterbi detector 205, a reconstruction filter 206, a subtractor 207 and adaptive logic 208. The head 130 may read data x (e.g., 0100111) from the disk 110, the automatic gain controller 201 may adjust the magnitude of the signal from the head 130, and the continuous time filter 202 may shape the signal from the automatic gain controller 201. The ADC 203 may convert the analog signal from the CTF 202 to digital signals, which are ADC samples q, and determine the phase of the ADC samples q. The FIR equalizer 204 may equalize the ADC samples q from the ADC 203 before data detection. The function of the FIR equalizer 204 is:r=c*q  (1)
wherein r is a number of equalized samples at the output of the FIR equalizer 204 and c is the FIR response.
The FIR response c may be any length. In one example, the length of c is 10, i.e., c has 10 taps and c=(c0, c1, c2, c3, c4, c5, c6, c7, c8, c9).
The Viterbi detector 205 detects data x from the disk 110 and outputs binary data at its output. To enable the Viterbi detector 205 to detect data x, the FIR equalizer 204 needs to make equation (2) roughly true:r=x*target polynomial  (2)
The target polynomial is chosen for a particular HDD and is programmable. One example of the target polynomial is [1, 0, −1]. Other target polynomials are, of course, possible.
The FIR response c may be initialized, but initial values of the taps of c may not be good enough to realize equation (2). A feedback loop including the reconstruction filter 206, the subtractor 207 and the adaptive logic 208 may be used to adapt the response of the FIR equalizer 204. Based on detected data {circumflex over (x)} at the output of the Viterbi detector 205, the reconstruction filter 206 may reconstruct the equalized samples. If there is no noise and mis-equalization, reconstructed samples at the output of the reconstruction filter 206 would be the same as the equalized samples r at the output of the FIR equalizer 204.
The subtractor 207 may receive the reconstructed samples from the reconstruction filter 206 and the equalized samples r from the FIR equalizer 204 and obtain their differences, which are error samples.
The adaptive logic 208 may receive the error signals from the subtractor 207 and the ADC samples from the ADC 203, and adapt the response of the FIR equalizer 204 to minimize the error samples.
One problem with the read channel 200 in FIG. 2 results from the interactions among the FIR equalizer 204, the AGC 201 and the ADC 203. Since the FIR response c has its own gain and phase, the adaptation of the FIR equalizer 204 may change the gain and phase of the FIR response c, which may affect the gain and phase of the read channel controlled by the AGC 201 and ADC 203 respectively. The interactions may cause tap values of the FIR response c to go in any direction, resulting in, e.g., a larger and larger gain:
Conventional approaches typically use a constraint at the adaptive logic 208 to restrict the interactions during the adaptation process. One prior art approach is called Fix2 constraint, which fixes values of certain taps of the FIR response c, e.g., c3 and c4. Another prior art approach is called Rank2 constraint, which fixes two quantities of the FIR response, e.g., c0-c2+c4-c6+c8, and c1-c3+c5-c7+c9, while allowing individual tap values to change.
One problem with these just-mentioned constraints is that the constraints are not based on tap values of the FIR response c. In addition, when the constraints are 0 or very small, the constraints may become useless.